package com.sml.pojo;

import com.fasterxml.jackson.annotation.JsonFormat;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.groups.Default;
import lombok.Data;

import java.time.LocalDateTime;

@Data
public class Category {
    //分类id
    @NotNull(groups = Update.class, message = "id不能为空")
    private Integer id;
    //分类名称
//    @NotEmpty(groups ={Add.class,Update.class},message = "分类名称不能为空")
    @NotEmpty(message = "分类名称不能为空")
    private String categoryName;
    //分类别名
//    @NotEmpty(groups ={Add.class,Update.class},message = "分类别名不能为空")
    @NotEmpty(message = "分类别名不能为空")
    private String categoryAlias;
    //创建用户
    private Integer createUser;
    //创建时间
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime createTime;
    //更新时间
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime updateTime;

    //如果说某个校验项没有指定分组，默认属于Default分组，所有分组都可以使用
    //分组之间可以继承，A extends B，A就拥有B的校验规则

    /**
     * 新增文章分类校验分组
     */
    public interface Add extends Default {

    }

    /**
     * 更新文章分类校验分组
     */
    public interface Update extends Default{

    }
}
